In general, the term “open source” is used to refer to software which is made available in both source code and object code forms, either without cost, or for only a nominal fee. This combination of low cost and source code accessibility makes open source software very attractive for programmers, because it provides them with the option of copying or adapting existing tools into their own code, rather than having to create code from scratch or rely on a vendor who will almost certainly neither provide source code nor allow modifications to be made to the software. Despite these benefits of open source software, there are many drawbacks to using it in a commercial setting. Chief among these is that some open source software is licensed under conditions that require any products which use the software to be distributed at no cost. Another drawback to open source software is that different open source software packages often have different licenses, and these licenses may or may not be compatible with each other and/or with the licenses for commercial software that a business might use.
As a result of the drawbacks described above, some businesses seek to address the risks of open source software by simply banning its use. However, this is an unsatisfactory solution because it sacrifices the ability to benefit from open source software in appropriate situations. An absolute prohibition on open source software can also suffer from non-compliance, as programmers may see open source software as a useful tool, which is being unnecessarily withheld from them by technically unsophisticated managers. Accordingly, there is a need for technology which can allow informed decisions to be made about the use of open source software, and which is convenient enough to be used by programmers in real time when deciding how to do their jobs. There is a further need for technology which can document the decisions made regarding the use of open source software, and provide a record showing what aspects of a business use (or do not use) open source.